const PROJECT_SCHEMA = {
  // 系统字段
  _id: 'string|false|comment=系统ID',
  _pid: 'string|false|comment=项目前缀ID',
  createTime: 'int|false|comment=创建时间',
  updateTime: 'int|false|comment=更新时间',
  stateTime: 'int|false|comment=状态变更时间',
  status: 'string|false|comment=状态代码',
  
  // 基础信息
  model: 'string|true|comment=项目型号',
  projectType: 'string|true|comment=项目类型',
  projectTypeName: 'string|false|comment=项目类型名称',
  customerName: 'string|true|comment=客户名称',
  applicantName: 'string|false|comment=申请人名称', 
  applicantId: 'string|false|comment=申请人ID',
  startDate: 'int|true|comment=项目开始日期',
  deadline: 'int|true|comment=项目截止日期',
  planStartDate: 'int|false|comment=计划开始日期',
  planEndDate: 'int|false|comment=计划结束日期',
  priority: 'string|true|comment=优先级',
  description: 'string|false|comment=项目描述',
  
  // 状态
  level1: 'int|true|default=1|comment=一级状态',
  level2: 'string|true|default=director|comment=二级状态',
  level3: 'string|false|comment=三级状态',
  level4: 'string|false|comment=四级状态',
  fullStatusDesc: 'string|false|comment=完整状态描述',
  
  // 分支
  branchId: 'string|false|comment=分支ID',
  branchName: 'string|false|comment=分支名称',
  masterBranchId: 'string|false|comment=主分支ID',
  
  // 进度
  progress: 'int|false|default=0|comment=进度百分比',
  completionPercentage: 'int|false|default=0|comment=项目完成度',
  developmentStatus: 'string|false|default=待立项|comment=开发状态',
  
  // 人员相关
  developmentManager: 'string|false|comment=研发负责人',
  businessManager: 'string|false|comment=业务负责人',
  projectLead: 'string|false|comment=项目负责人',
  projectLeadId: 'string|false|comment=项目负责人ID',
  department: 'string|false|comment=部门',
  salesperson: 'string|false|comment=销售人员',
  salespersonId: 'string|false|comment=销售人员ID',
  salespersonName: 'string|false|comment=销售人员名称',
  projectManager: 'string|false|comment=项目经理',
  projectManagerId: 'string|false|comment=项目经理ID',
  
  // 样机相关字段
  hasSample: 'string|false|comment=有无样机',
  sampleCount: 'string|false|comment=样机数量',
  sampleImages: 'array|false|comment=样机图片',
  attachments: 'array|false|comment=附件',
  
  // 标记字段
  isActive: 'bool|false|default=true|comment=是否活动',
  isOverdue: 'bool|false|default=false|comment=是否逾期',
  
  // 电机控制项目特有字段
  controlMode: 'string|false|comment=控制模式',
  controlAlgorithm: 'string|false|comment=控制算法',
  controlInterface: 'string|false|comment=控制接口',
  rotation: 'string|false|comment=正反转',
  controlDescription: 'string|false|comment=控制详细描述',
  workTemp: 'string|false|comment=工作环境温度',
  certification: 'string|false|comment=认证',
  lowPower: 'string|false|comment=低功耗',
  startupTime: 'string|false|comment=启动时间',
  conformalCoating: 'string|false|comment=三防涂层',
  ratedVoltage: 'string|false|comment=额定电压',
  maxPower: 'string|false|comment=最大功率',
  maxSpeed: 'string|false|comment=最大转速',
  polePairs: 'string|false|comment=极对数',
  hasHall: 'string|false|comment=是否有霍尔',
  hasFG: 'string|false|comment=是否有FG',
  hasBrake: 'string|false|comment=是否有刹车',
  
  // PWM控制子参数
  pwmStartDuty: 'string|false|comment=开机点占空比',
  pwmStopDuty: 'string|false|comment=关机点占空比',
  pwmDutyRange: 'string|false|comment=占空比范围',
  pwmFreqRange: 'string|false|comment=频率范围',
  
  // 保护参数及子参数（可按需补全）
  stallProtection: 'string|false|comment=堵转保护',
  overvoltageProtection: 'string|false|comment=过压保护',
  undervoltageProtection: 'string|false|comment=欠压保护',
  temperatureProtection: 'string|false|comment=温度保护',
  overcurrentProtection: 'string|false|comment=过流保护',
  currentLimitProtection: 'string|false|comment=电流限制保护',
  blockageProtection: 'string|false|comment=堵塞保护',
  phaseProtection: 'string|false|comment=相序保护',
  
  // 保护参数子参数
  stallHoldTime: 'string|false|comment=堵转保持时间',
  stallRestartTime: 'string|false|comment=堵转重试时间',
  stallRestartCount: 'string|false|comment=堵转重试次数',
  overvoltageValue: 'string|false|comment=过压阈值',
  overvoltageRecoveryValue: 'string|false|comment=过压恢复值',
  undervoltageValue: 'string|false|comment=欠压阈值',
  undervoltageRecoveryValue: 'string|false|comment=欠压恢复值',
  protectionTemp: 'string|false|comment=温度阈值',
  recoveryTemp: 'string|false|comment=温度恢复阈值',
  overcurrentValue: 'string|false|comment=过流阈值',
  currentLimitValue: 'string|false|comment=电流限制值',
  blockageDiameter: 'string|false|comment=堵塞直径',
  blockageHoldTime: 'string|false|comment=堵塞保持时间',
  
  // 保留字段（用于未来扩展，避免频繁修改schema）
  field1: 'string|false|comment=保留字段1',
  field2: 'string|false|comment=保留字段2',
  field3: 'string|false|comment=保留字段3',
  field4: 'string|false|comment=保留字段4',
  field5: 'string|false|comment=保留字段5',
  
  // 扩展数据字段 - 存储非核心字段
  extData: 'object|false'
};

module.exports = {
  PROJECT_SCHEMA
}; 